C++中&a[0]与a[0] 的区别?

来源:百度知道 编辑:UC知道 时间:2024/06/27 04:35:59
int a[2]={1,2};
int *pb=a;
int *pe=a+2;
cout <<&a[0]<< *(a+1)<< pb << *pb <<endl;
在帮忙分析下输出的结果!谢谢!

a[0]:是获取a这个数组第0个元素的值;
&a[0]:是获取a这个数组第0个元素的地址;
比如把数组比作一个小区,a[0]就是代表小区里某栋房子本身,而&a[0]则表示某栋房子的门牌号,你知道了门牌号,并且知道它在a小区,那么你就能找到这栋房子.

望采纳!!^_^

&a[0]输出的是一个地址值。(数组的首地址)
*(a+1)输出的是“2”即数组第二个元素的值
pb的输出与&a[0]相同,都是地址。(数组的首地址)
*pb输出的是“1”

0012FF6C 2 0012FF6C 1

&a[0]是取a[0]的地址
a[0]则是数组a 的第一个元素

&a[0]是a[0]的地址,输出以后是类似于0x0021DF34这种格式的东西,表示内存地址

a[0]是第1个元素
&a[0]第一个元素的地址